/**
 * 
 */
package com.shine.icis.blo;

import com.shine.cotrun.sql.QueryParameters;
import com.shine.cotrun.web.comm.ListPage;
import com.shine.icis.dto.RptA13;
import com.shine.icis.dto.RptA13.RptA13Id;
import com.shine.icis.exception.ICISException;
import com.shine.icis.hbean.RptA13Bak;
/**
 * @author zhangxr
 *
 */
public interface IRptA13Service {
	/**
	 * 翻页查询
	 * @param qp
	 * @return
	 */
	public ListPage<RptA13> getRptA13Page(QueryParameters qp);
	
	/**
	 * 翻页查询
	 * @param qp
	 * @return
	 */
	public ListPage<RptA13Bak> getRptA13BakPage(QueryParameters qp);
	
	/**
	 * 导出
	 * @param qp
	 * @param dir
	 * @param expType
	 * @return
	 */
	public String csExpDataRptA13(QueryParameters qp, String dir, String expType);
	
	/**
	 * 导出
	 * @param qp
	 * @param dir
	 * @param expType
	 * @return
	 */
	public String csExpDataRptA13Bak(QueryParameters qp, String dir, String expType);
	
	/**
	 * 保存A13的信息
	 * @author zhangxr
	 * @param rptA13 A13实体信息
	 * @param userCode 用户编号
	 * */
	public void addRptA13(RptA13 rptA13,String userCode) throws ICISException;
	
	/**
	 * A13信息的修改
	 * 
	 * @author zhangxr
	 * @param oldId
	 *            原A13表的主键
	 * @param rptA13
	 *            A13实体
	 * @param userCode 用户编号
	 */
	public void modifyRptA13(RptA13Id id, RptA13 rptA13,String userCode) throws ICISException;
	
	/**
	 * 获得新的证券公司编码
	 * @author zhangxr
	 * */
	public String getNewCompanyCode(String busiDate);
	
	/**
	 * 根据主键，删除A13信息
	 * @author zhangxr
	 * @param id A13表主键
	 * @param userCode 用户编号
	 * */
	public void deleteRptA13(RptA13Id id,String userCode)throws ICISException;
	
}
